ARES¶

Reporte de resultados¶

Este es un reporte con los resultados de los experimentos realizados por ARES. Donde se han recopilado 57600 datos, de dos clases de software de control, para cuatro tipos de misiones.

ARES fue testeado en:

  • Arenas (5): Triangular, Cuadrada, Hexagonal, Octagonal, Dodecagonal
  • Tamaños de las arenas (3): Pequeña, Mediana, Grande
  • Clase software de control por misión (2): Clase A y Clase B
  • Modos de operación (2): Sin Fallos (1), con Fallos (3) 10%, 20% y 30% del total del enjambre con fallos
  • Tamaño del enjambre de robots: 2,5,10,20,30,40,50,60,70,80,90,100
  • Duración de las misiones 240 segundos

Contenido¶

En este reporte encontraras resultados sobre el rendimiento de las misiones y la evaluación de las propiedades del enjambre de robots.

  1. Resultados rendimiento de la misión (Performance).
  2. Resultados propiedades (Escalabilidad, Flexibilidad, Robustez).

Los resultados del rendimiento de cada misión corresponden a una gráfica de tipo "Box-plot", mientras que para la visualización de los resultados de las propiedades usamos "Heat map", esto con el fin de ver el efecto que tiene el cambio de parámetros como la arena, su tamaño y la densidad del enjambre durante el desarrollo de la misión.

Misiones¶

ARES muestrea cuatro tipos de misiones que van acorde al software de control que se quiere evaluar: Exploración, Agregación, marcha en formación y toma de decisiones colectivas.

Exploración:¶

Los robots deben explorar y cubrir el mayor espacio posible. El suelo es completamente gris. Al principio del experimento, los N robots se colocan aleatoriamente en el espacio de trabajo. Con el fin de medir el rendimiento del enjambre, la arena se dividido en una cuadrícula de N baldosas por N baldosas, dependiendo del tamaño de la arena. Para cada baldosa, conservamos el tiempo t transcurrido desde la última vez que fue visitada por un robot. Cada vez que la baldosa es visitada por un robot, este tiempo se pone a 0. El rendimiento del enjambre se mide por la suma sobre todos los ciclos de control del opuesto del tiempo medio t sobre todas las baldosas.

la función objetivo medida durante el desarrollo de la misión es:

$\begin{align} F_{exploración}=\sum_{i=1}^{Ncc}(\frac{1}{N_{tiles}}\sum_{j=1}^{N_{Tiles}}-t_{ij}) \end{align} $

Donde $N_{cc}$ es el número de ciclos de control para todo el experimento, $N_{Tiles}$ es el número de baldosas y $t_{ij}$ es el tiempo, en el ciclo de control $i$, desde que la baldosa $j$ fue fue atravesada por un robot.

Agregación:¶

Los robots deben agregarse lo más rápido posible en un punto negro ubicado en el espacio de trabajo. El suelo es completamente gris excepto por un área circular negra de 3 m de diámetro ubicada de forma aleatoria en la arena de simulación. El rendimiento del enjambre se mide por la suma del total de robots que se encuentran en la zona de agregación al final de la misión.

La función objetivo para obtener el performance de la misión es la siguiente:

$ \begin{align} F_{agregación}=\sum_{i=1}^{N}T_{i} \end{align} $

Donde $N$ es el numero de robots y $T_{i}$ es el tiempo de agregación que permanece el robot $i$ en la zona negra, durante la duración de la misión.

Marcha en formación:¶

En esta misión, el enjambre de robots debe cubrir uniformemente una región objetivo en la arena. La región objetivo es un área cualquiera en la arena de simulación o la misma arena en si. Al comienzo de cada experimento, los robots se colocan aleatoriamente.

El mejor rendimiento se logra cuando se minimiza la siguiente función objetivo:

$ \begin{align} F_{1}(T) = E[d(t)]^{2} \end{align} $ donde $f_{1}(T)$ es el cuadrado de la distancia esperada $E[d(T )]$, medida sólo una vez al final del experimento. $E[d(T)]$ es la distancia esperada, en el tiempo $T$, entre un punto genérico dentro de la región objetivo y su robot más cercano dentro de la región objetivo (Arena de simulación). Se estima $E[d(T )]$ calculando la distancia promedio entre cualquier punto dentro de la región objetivo (en la práctica, un conjunto suficientemente grande de puntos muestreados aleatoriamente) y su robot más cercano P dentro de la región objetivo. Más precisamente, $E[d(T)] ≈ \sum_{p=1}^{P} min_{i}(d_{ip})/P$ ; dónde $p ∈ [1, 1000]$ es un punto en un conjunto de puntos muestreados aleatoria y uniformemente dentro de la región objetivo; y $i ∈ [N_{robots}]$ es un robot en el conjunto de robots que están dentro de la región objetivo en el tiempo $T$. La distancia $d_{ip}$ es, por lo tanto, la distancia entre un punto aleatorio $p$ y un robot $i$ que están ambos dentro de la región objetivo.

Toma de decisiones colectiva:¶

En esta misión, el enjambre de robots debe interactuar con otros robots para llegar a un consenso para brillar en un solo color entre rojo, verde y azul. El mejor rendimiento de logra cuando un porcentaje mayor o igual al 80% del enjambre llega a un consenso. La función objetivo para obtener el rendimiento de la misión es la siguiente:

$\begin{align} F_{Consenso}(T) = \frac{\sum_{i=1}^{N}Robot_{C}}{N}(T) \end{align}$

Donde $N$ es la cantidad total de robots que están llevando a cabo la misión, $Robot_{C}$ son la cantidad de robots que están emitiendo un color donde $C ∈ [Rojo, Verde, Azul]$, y $T$ el tiempo de simulación en el que se llega al consenso.

A continuación veeremos los resultados de los experimentos, recuerda que el set completo de datos se encuentra en la carpeta "Experimentos" y el set completo de plots se encuentra en la carpeta "Plots-Experimentos" dentro del repositorio del proyecto https://github.com/gmadro04/ARES.

RESULTADOS EXPERIMENTOS¶

No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image
No description has been provided for this image

Propiedades enjambres de robots¶

Estos sistemas poseen tres propiedades fundamentales, escalabilidad, flexibilidad y robustez, que en una primera medida son deseables, y en una segunda, fundamentales para el diseño de un enjambre de robots. A continuación encontraras una breve descripción de cada una de estas propiedades y sus respectivos resultados.

* Escalabilidad:¶

Se define como la capacidad de añadir o quitar unidades de robots al enjambre, sin que se afecte su funcionamiento. La escalabilidad requiere que el enjambre de robots, sea capaz de operar sin importar el tamaño del enjambre o densidad.

¿Cómo medir escalabilidad?

Para medir escalabilidad en los enjambres de robots se toman en cuenta dos aspectos importantes: (1) El rendimiento del enjambre de robots, no decrece cuando se incrementa el tamaño. (2) EL rendimiento del enjambre crece a medida de que el tamaño aumenta. En escalabilidad se espera que la condición mínima para que un sistema de enjambres de robots se considera escalable es que $\textbf{el rendimiento del enjambre siga siendo el mismo AL MENOS para N agentes de robots como para N+m agentes de robots}$.

La escalabilidad se define como:

$ \begin{align} S = \frac{\%\Delta P}{\%\Delta N} \\ \end{align} $

$ \begin{align} \%\Delta P = \frac{P_{N+m}-P_{N}}{P_{N}} \\ \%\Delta N = \frac{m}{N} \end{align} $

Donde $P_{N}$ es el rendimiento del enjambre original, $P_{N+m}$ es el rendimiento del enjambre cuando se aumenta $N+m$ robots. $N$ es el total del enjambre de robots original y $m$ la cantidad de robots que se adicionan con respecto al tamaño inicial.

El sistema es escalable cuando el cambio de rendimiento es positivo. Esto quiere decir que $S > 0$. Un caso particular es cuando $S > 1$, lo que significa que el sistema es escalable y super lineal.

No description has been provided for this image
No description has been provided for this image
No description has been provided for this image

* Robustez:¶

Se asocia con su capacidad para tolerar fallos. Como estos tipos de sistemas se caracterizan por estar compuestos por un gran número de individuos sin importar que, una, dos o mas de estas unidades de robots falle, o que se presenten alteraciones en el entorno. El funcionamiento global del enjambre no se ve gravemente afectado. La perdida o fallo de operación de uno de los individuos, puede ser compensada por otro individuo.

¿Cómo medir robustez?

Para medir la robustez de en los enjambres de robots, se deben tener en cuenta dos aspectos importantes: (1) El efecto de los robots que fallan en el rendimiento del grupo.
(2) El efecto de los robots defectuosos en los robots no defectuosos. Esto quiere decir que el enjambre debe permitir una sutil degradación en presencia de fallos en el sistema.

Por lo tanto, si "$m$" robots de un total $N$ de robots han fallado por $X$ falla. Se considera que existe una buena robustez cuando: $\textbf{El porcentaje de cambio en el rendimiento del enjambre debido a los fallos es MENOR}$ que el cambio porcentual en el rendimiento de una enjambre en buen funcionamiento con $N-m$ robots.

La robustez de un enjambre de robots se define como: $ \begin{align} R = \%\Delta P - \%\Delta N \\ \%\Delta P = \frac{P_{f}-P_{0}}{P_{0}} \\ \%\Delta N = \frac{m}{N} \end{align} $ Donde $ R > 0$ quiere decir que el sistema es robusto. $P_{f}$ corresponde al performance del enjambre con fallos, $P_{0}$ es el performance del enjambre sin fallos, $N$ es el total de robots del enjambre y $m$ la cantidad de robots que están fallando respecto al total $N$.

No description has been provided for this image
No description has been provided for this image
No description has been provided for this image

* Flexibilidad:¶

Se define como la capacidad de estos enjambres de robots de adaptarse fácilmente a diferentes tipos de tareas y cambios en el entorno. La flexibilidad se ve favorecida gracias a que estos enjambres de robots son altamente redundantes.

¿Cómo medir flexibilidad?

Un sistema es flexible o adaptable cuando no existen cambios o perdidas significativas en su rendimiento. Dicho sistema debe ser adaptable a $"X"$ cambios como: Obstáculos, cambios en el tamaño del escenario de simulación, brillos de luz, tipo de tarea y sus parámetros de operación.

La flexibilidad se define como:

$ \begin{align} A = \frac{\%\Delta P}{|\%\Delta X|}+1 \end{align} $

$ \begin{align} \%\Delta P = \frac{P_{New}-P_{0}}{P_{0}} \\ \%\Delta X = \frac{X_{New-X_{0}}}{X_{0}} \end{align} $

Donde $P_{New}$ es el rendimiento del enjambre con cambios en el parámetro $X$, $P_{0}$ es el rendimiento del enjambre sin cambios en el parámetro $X$, $X_{new}$ son las nuevas condiciones en el parámetro $X$ y $X_{0}$ las condiciones iniciales del parámetro $X$. Las condiciones deben ser las mismas en los dos casos con la diferencia de consideración del parámetro $X$ entre los dos experimentos.

Un sistema es adaptable a cambios en el parámetro externo $X$, si cualquier perdida de rendimiento $\%\Delta P$ es $\textbf{menor}$ que el cambio proporcional en el parámetro $X$ ( $\%\Delta X$). Por lo tanto El sistema es flexible o adaptable si $A > 0$.

Un caso particular es cuando $A > 1$ lo que significa que la flexibilidad o adaptabilidad es muy buena.

No description has been provided for this image
[NbConvertApp] Converting notebook reporte.ipynb to html
[NbConvertApp] WARNING | Alternative text is missing on 19 image(s).
[NbConvertApp] Writing 31938887 bytes to /home/gmadro/swarm_robotics/SWARM_GENERATOR/Reporte-Resultados/reporte_mision3.html